package com.ddpt.platform.common.export.vo.user;

import com.ddpt.platform.common.export.Export;
import com.ddpt.platform.common.export.vo.QueryDataVo;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
public class TagVo extends QueryDataVo {
    /**
     * 属性类型
     *
     * @see com.ddpt.platform.common.enums.TagTypeEnum
     * number(0,"数字类型"),
     * string(1,"字符串类型"),
     * time(3,"时间类型"),
     * enumerate(4,"枚举类型")
     * booleanTypes(5,"布尔类型")
     */
    @Export(value = "属性类型", key = {"0", "1", "3", "4", "5"}, val = {"数字类型", "字符串类型", "时间类型", "枚举类型", "布尔类型"})
    private Integer propertyType;

    /**
     * 属性名称
     */
    @Export(value = "属性名称")
    private String propertyName;

    /**
     * 属性key
     */
    @Export(value = "属性key")
    private String propertyKey;

    /**
     * 分类字段 0 非系统 1 系统
     */
    @Export(value = "商品分类名称", key = {"0", "1"}, val = {"非系统", "系统"})
    private Integer classifyType;

    /**
     * 属性默认值
     */
    @Export(value = "属性默认值")
    private String defaultValue;

    /**
     * 枚举值 JSONArray类型
     */
    @Export(value = "JSONArray类型")
    private String enumerateValue;

    /**
     * 属性说明
     */
    @Export(value = "属性说明")
    private String remark;

    /**
     * 分组id
     */
    @Export(value = "分组id", isStr = true)
    private Long categoryId;

    /**
     * 失效类型	fixed, //固定时间 比如 2022-01-01 00:00:00	relatively, //相对时间   自领取后多久失效	dayEnd,//当天失效 自领取后	weekEnd,//周末失效 自领取后	monthEnd,//月末失效 自领取后	yearEnd,//年末失效 自领取后
     */
    @Export(value = "失效类型")
    private String expireType;

    /**
     * 失效时间，仅针对 fixed和relatively 有效
     */
    @Export(value = "失效时间", isTime = true)
    private Long expireTime;

    /**
     * 互斥标签ids
     * 英文 , 逗号隔开 形如 1,2,3
     */
    @Export(value = "互斥标签ids")
    private String mutexTagIds;
}
